A database is a collection of stored information. While databases need not necessarily be computerized, computerized databases allow for the storing, organizing, and efficient searching of very large collections of information. A database management system (DBMS) is a computer application that is designed to facilitate the accessing of a computerized database by, for example, performing functions that allow information to be added to and retrieved from a computerized database.
A directory service is a form of DBMS that allows for quick access to information from a database. Directory services are often optimized for simultaneous information retrieval by a large number of users. Because directory services are optimized for quick information retrieval rather than for allowing users to add, remove and modify database information, directory services are an excellent way for organizations to make database information available to large groups of users, many of whom may wish to access the database at the same time. Directory services may also utilize one or more standards and/or protocols such as, for example, X.500 directory standards, Lightweight Directory Access Protocol (LDAP), directory service markup language (DSML), or a combination of these or other standards and/or protocols.
Because of the immense size of modern databases and the large numbers of users who may wish to access a database simultaneously, database and directory service efficiency is of a primary concern. For example, users executing a query to find particular information demand speedy results. One method for increasing DBMS performance requires upgrading computer hardware to include additional and/or faster components such as CPUs, disk drives, and memory. Software may also be used to provide additional directory server processes. Complex design configurations related to routing, security, and/or administrative controls in directory services may also increase DBMS performance. The described solutions, however, often involve high costs in terms of hardware, software, maintenance, and operations.